package com.waiting.java8.feature;

import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.format.FormatStyle;

/**
 * @Description
 * @Author bjweitingting
 * @Date 2018/10/9
 **/
public class DateTimeApiTest {
    public static void main(String[] args) {
        //获取当前的时区 ，输出接口：Asia/Shanghai
        System.out.println(Clock.systemDefaultZone().getZone().toString());
        //系统默认的时区
        // 系统默认的时区是从native方法获取的当前系统属性get the time zone ID from the system properties
        System.out.println(ZoneId.systemDefault());
        //指定时区，获取当前时间戳
        System.out.println(Clock.system(ZoneId.systemDefault()).millis());

        //当前的时间，格林威治时间,2018-10-09T08:58:15.852Z
        System.out.println(Instant.now());

        System.out.println(Duration.ofMillis(1539075623172l));
       //当前的时间，输出：2018-10-09
        System.out.println(LocalDate.now());
        //当前的时刻，输出值：17:03:26.520
        System.out.println(LocalTime.now());
       //当前的时间，输出： 2018-10-09T17:03:26.520
        System.out.println(LocalDateTime.now());

        //定义时间格式
        DateTimeFormatter  dateTimeFormatterFull=DateTimeFormatter.ofLocalizedDate(FormatStyle.FULL);
        DateTimeFormatter  dateTimeFormatter=DateTimeFormatter.ofPattern("yyyy-MM-dd");
        //输出：2018年10月9日 星期二
        System.out.println(LocalDateTime.now().format(dateTimeFormatterFull));
        //输出：2018-10-09
        System.out.println(LocalDateTime.now().format(dateTimeFormatter));
    }
}
